const { get } = require('../../../utils/request');
const { COLLECT_API } = require('../../../utils/api');

Page({
  data: {
    // 图片数据列表，包含三张图片的路径和对应信息
    imageList: [
      {
        url: '/images/redomrecommend.png',
        title: '推荐美食 | 精选料理',
        time: '15-30分钟',
        skill: '零厨艺'
      },
      {
        url: '/images/blackecook.png',  // 修正了原路径中的拼写错误
        title: '黑色料理 | 特色风味',
        time: '20-40分钟',
        skill: '简单'
      },
      {
        url: '/images/pizza.png',
        title: '意大利披萨 | 经典口味',
        time: '30-50分钟',
        skill: '中等'
      }
    ],
    currentIndex: 0,  // 当前显示的卡片索引
    imageLoaded: false,
    loading: false // 加载状态
  },

  onLoad() {
    // 页面加载时获取随机推荐数据
    console.log('页面加载完成，开始获取随机推荐数据');
    this.getRandomRecommendations();
  },

  // 获取随机推荐数据
  async getRandomRecommendations() {
    try {
      this.setData({ loading: true });
      
      const result = await get(COLLECT_API.RANDOM_DETAILS);
      console.log('API返回结果:', result);
      
      if (result && result.data && result.data.length > 0) {
        // 处理API返回的数据，确保格式正确
        const processedData = result.data.map(item => ({
          url: item.coverUrl || item.imageUrl || item.url || '/images/default-food.png',
          title: item.collectionName || item.name || item.title || '推荐美食',
          time: item.cookTime || item.time || '15-30分钟',
          skill: item.difficulty || item.skill || '简单'
        }));
        
        this.setData({
          imageList: processedData,
          loading: false
        });
        console.log('设置随机推荐数据到imageList:', this.data.imageList);
      } else {
        console.log('API返回数据为空或格式不正确，保持默认数据');
        this.setData({ loading: false });
      }
    } catch (error) {
      console.error('获取随机推荐失败:', error);
      this.setData({ loading: false });
      
      // 如果API请求失败，保持默认数据
      wx.showToast({
        title: '获取数据失败，显示默认内容',
        icon: 'none',
        duration: 2000
      });
    }
  },

  // 监听滑动切换事件
  onSwipeChange(e) {
    const currentIndex = e.detail.current;
    this.setData({
      currentIndex
    });
    console.log('当前显示第', currentIndex + 1, '张图片');
  },

  // 图片加载成功
  imageLoad() {
    console.log('图片加载成功');
    this.setData({
      imageLoaded: true
    });
  },

  // 图片加载失败
  imageError(err) {
    console.error('图片加载失败:', err);
    // 可以设置默认图片作为备选
    // const imageList = [...this.data.imageList];
    // imageList[this.data.currentIndex].url = '/images/default.png';
    // this.setData({ imageList });
  },

  // 跳转到详情页
  navigateToAnotherPage() {
    // 获取当前选中的图片信息
    const currentItem = this.data.imageList[this.data.currentIndex];
    wx.navigateTo({
      url: `/pages/detail/detail?title=${currentItem.title}`,
      fail: (err) => {
        console.error('跳转失败:', err);
        wx.showToast({
          title: '跳转失败',
          icon: 'none',
          duration: 2000
        });
      }
    });
  },

  // 下拉刷新
  onPullDownRefresh() {
    this.getRandomRecommendations().then(() => {
      wx.stopPullDownRefresh();
    });
  }
})
    